package com.syx.system.Model.sysUser;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.syx.commoncore.Model.BaseEntity;
import lombok.Data;

@Data
@TableName("tb_sys_user")
public class SysUser extends BaseEntity {
    /*数据迁移和备份：如果你需要将数据从⼀个数据库迁移到另⼀个数据库，或者备份和恢复数据，⾃
    增主键可能会导致问题。例如，如果你在新数据库中已经存在与旧数据库相同的⾃增 ID，那么插⼊
    操作可能会失败。
            • 删除和插⼊操作：如果表中存在⼤量删除和插⼊操作，⾃增主键可能会导致 ID 值的不连续。这可
    能会浪费存储空间，并可能导致某些应⽤程序或系统逻辑出现问题。
            • 性能问题：在⾼并发的写⼊操作中，⾃增主键可能会导致性能瓶颈。因为每次插⼊新记录时，数据
    库都需要找到下⼀个可⽤的⾃增 ID。这可能会增加写操作的延迟。
            • 可预测性：⾃增主键的值是可预测的，因为它们总是按照递增的顺序⽣成。这可能会带来安全⻛
    险，例如，攻击者可能会尝试预测未来的 ID 值来插⼊恶意数据。
            • 分布式环境问题：在分布式数据库系统中，⾃增主键可能会带来挑战。如何保证各个节点⽣成的⾃
    增id是唯⼀的，这将需要额外的机制来协调各个节点。*/
    //雪花算法
    @TableId(type = IdType.ASSIGN_ID)
    private Long userId;//主键，不再使用auto_increment进行维护主键
    private String userAccount;
    private String password;
    private String nickName;




}
